Add fast_build reasoner with speed-optimized pipeline config#4
Closed
Add fast_build reasoner with speed-optimized pipeline config#4
Conversation
added 2 commits
February 18, 2026 17:02
…n_build() Extracts the build() pipeline body into a private async helper _run_build() that accepts an already-constructed BuildConfig. Rewrites build() as a thin wrapper over _run_build() with identical behaviour. Adds fast_build() as a new @app.reasoner() with the same 10-parameter signature that merges 12 speed-optimised defaults before any caller-supplied config overrides, then delegates to _run_build(). All changes confined to swe_af/app.py. Fast defaults: max_review_iterations=0, max_retries_per_issue=0, max_replans=0, enable_replanning=False, max_verify_fix_cycles=0, max_coding_iterations=1, max_advisor_invocations=0, enable_issue_advisor=False, enable_integration_testing=False, agent_max_turns=50, agent_timeout_seconds=900, git_init_max_retries=1.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
fast_buildreasoner toswe_af/app.pyas a speed-optimized alternative tobuild(), targeting ~5–10 min turnarounds vs 30+ min for the full build.build()to delegate its core pipeline logic to a private async helper_run_build(), eliminating code duplication.fast_build()constructs aBuildConfigwith all iteration knobs turned to zero/minimum and delegates to_run_build(), with caller-supplied config still able to override fast defaults.tests/test_fast_build_smoke.pypass, confirming signature parity, fast default values, caller override behavior, and reasoner registration.Changes
swe_af/app.py— Core change: extracted_run_build()private async helper;build()now delegates to it unchanged; new@app.reasoner()fast_build()added with identical 10-parameter signature that merges 12 fast defaults before invoking_run_build().tests/test_fast_build_smoke.py— New smoke test suite (9 tests) covering AC1–AC9: reasoner registration, signature parity, fast config defaults, caller override, non-reasoner status of_run_build, and file-scope constraint.Fast defaults applied by
fast_build()max_review_iterationsmax_retries_per_issuemax_replansenable_replanningmax_verify_fix_cyclesmax_coding_iterationsmax_advisor_invocationsenable_issue_advisorenable_integration_testingagent_max_turnsagent_timeout_secondsgit_init_max_retriesTest plan
pytest tests/test_fast_build_smoke.py -v— all 9 tests should passfast_buildappears in[r['id'] for r in app.reasoners]fast_buildon a trivial repo and confirm completion in <10 minbuild()behavior is unchanged (full pipeline, defaultBuildConfig)configdict overrides fast defaults infast_build()🤖 Built with AgentField SWE-AF
🔌 Powered by AgentField